package com.yy.service;

import com.github.pagehelper.PageInfo;
import com.yy.domain.AppointmentTasksDO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yy.domain.ImageDataDO;
import com.yy.dto.*;
import com.yy.vo.AppointmentTasksPageVO;
import com.yy.vo.AppointmentTasksVO;
import com.yy.vo.LoginVO;
import com.yy.vo.ScheduleRequestVO;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author 姚欣宏
 * @since 2023-07-06
 */
public interface AppointmentTasksService extends IService<AppointmentTasksDO> {


    /**
     * 创建任务
     * @param appointmentTasksVO
     * @return
     */
    Integer appointmentTasks(AppointmentTasksVO appointmentTasksVO);

    /**
     * 查询医生一周的排班
     * @param scheduleRequestVO
     * @return
     */
    List<ScheduleDTO> selWeekScheduleTwo(ScheduleRequestVO scheduleRequestVO);

    ImageDataDO getImageCode(Integer id);



    PageInfo<AppointmentTasksDO> selectAppointmentTsks(AppointmentTasksPageVO appointmentTasksPageVO);

    Integer configurationAppointmentTasks(AppointmentTasksVO appointmentTasksVO);

    List<UserCardListDTO> cardlist(Integer id);

    List<DeptDTO> selFirstDept(Integer id);

    List<DoctorDTO> selDoctorListByMoreTerm(Integer id, String deptCategoryCode);

    String sureAppointment(Integer id);

    List<ContentDTO> selAppointmentRecord(Integer id);

    void copy(Integer id);

    String checkToken(Integer id);

    void autoSureAppointment(AppointmentTasksDO appointmentTasksDO);

    void appointmentCancelOrBack(BackDTO backDTO);

    String appointmentToPay(BackDTO backDTO);
}
